from pyspark import SparkConf, SparkContext

if __name__ == '__main__':
    # 构建SparkConf对象
    conf = SparkConf().setAppName("test").setMaster("local[*]")
    # 构建SparkContext执行环境入口对象
    sc = SparkContext(conf=conf)

    rdd = sc.parallelize([1, 2, 3, 4, 5], 2)

    rdd1 = rdd.glom()
    """
    glom:将数组按照分组进行嵌套
    """

    print(rdd1.collect())

    """
    解除嵌套：使用flatMap，传入lambda x:x (等于说不进行任何操作)
    """
    rdd2 = rdd1.flatMap(lambda x: x)
    print(rdd2.collect())
